Selenium-vba クラス名で要素を取得 (Selenium-vba Get element by Class Name)


問題の説明

Selenium‑vba クラス名で要素を取得 (Selenium‑vba Get element by Class Name)

次のことをしようとすると、「オブジェクトはプロパティまたはメソッドをサポートしていません」というエラーが表示されます

Sub Testing()
   Dim driver As New SeleniumWrapper.WebDriver
   driver.Start "chrome", "http://www.tsn.ca/fury‑upsets‑klitschko‑to‑become‑heavyweight‑champion‑1.401257"
   driver.Open "/"

   MsgBox driver.getElementsByClassName("headline").Text

End Sub

driver.getElementsByClassName("headline")(0).Text<も試しました/コード>


リファレンスソリューション

方法 1:

It is not "get" ‑ it is "find":

driver.findElementByClassName("headline").Text

Alternatively, using a CSS selector:

driver.findElementByCssSelector(".headline").Text

方法 2:

The headline element within the website is:

<div class="headline">
    <h1>Fury upsets Klitschko to win heavyweight titles</h1>
</div>

So you can use either of the following Locator Strategies:

  • Using FindElementByClassName:

    driver.FindElementByClassName("headline").Text
    
  • Using FindElementByCss:

    driver.FindElementByCss("div.headline > h1").Text
    
  • Using FindElementByXPath:

    driver.FindElementByXPath("//div[@class='headline']/h1").Text
    

(by Display namealecxeundetected Selenium)

リファレンスドキュメント

  1. Selenium‑vba Get element by Class Name (CC BY‑SA 2.5/3.0/4.0)

#vba #excel #selenium #selenium-webdriver






関連する質問

2010カスタムリボンにアクセス (access 2010 custom ribbon)

セルに値が保存されているファイルを開く (Open files with values stored in cells)

コンソールはプログラミング言語で制御できますか? (Can consoles be controlled by programming languages?)

このコードを変更して、最後の行の下の行にデータを貼り付けるにはどうすればよいですか? (How do I modify this code to paste in the row under last row with data?)

Selenium-vba クラス名で要素を取得 (Selenium-vba Get element by Class Name)

セルからデータを抽出し、セルをアルファベット順に並べ替えるにはどうすればよいですか? (How do I extract data from a cell and order the cells alphabetically?)

VBAコードがセルをアクティブにしない (VBA code not activating cell)

列をExcel VBAループして、空白以外をコピーして他の3つの列に貼り付けますか? (Excel VBA Loop through Column to Copy and Paste Non Blanks to 3 other Columns?)

コードは 2 つの製品で動作しますが、3 番目の製品コードを追加すると、データが取得されますが、3 番目の製品だけに保存されません。どうしたの? (Code works with two products but when I add a third product code grabs data but doesn't save it only for third product. What's wrong with it?)

シート 2 の範囲内のセル名に基づいてシート (シート 1) を複製して名前を変更するために必要な VBA コード (VBA code needed to duplicate and rename a sheet (Sheet 1) based on cell names in a range on Sheet 2)

signtool.exe エラー: Excel マクロの署名時に SignerSign() が失敗しました (-2147220492/0x800403f4) (signtool.exe Error: SignerSign() failed (-2147220492/0x800403f4) when signing Excel Macro)

Excelで1つの列の「 - 」で区切られたデータを複数に分割する (Divide data separated from ' - ' in one column into more in excel)







コメント